package net.chasing.retrofit.api;

import io.reactivex.rxjava3.core.Flowable;
import okhttp3.ResponseBody;
import retrofit2.http.GET;
import retrofit2.http.Header;
import retrofit2.http.Streaming;
import retrofit2.http.Url;

public interface FileService {

    @Streaming
    @GET
    Flowable<ResponseBody> downloadFile(@Url String fileUrl);

    /*
    大文件断点下载功能
    “RANGE”Header格式："bytes=" + 已经下载的文件字节长度 + "-"
     */
    @Streaming/*大文件需要加入这个判断，防止下载过程中写入到内存中*/
    @GET
    Flowable<ResponseBody> downloadFile(@Header("RANGE") String start, @Url String url);
}
